chore(release): sync aqua-registry dependency sources#9776
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces a helper function use_published_aqua_registry in the xtasks/release-plz script to streamline the process of updating the aqua-registry dependency. The function handles removing and re-adding the dependency for both standard and build configurations. Feedback was provided to improve the robustness of the script by allowing the cargo rm commands to fail gracefully, ensuring the script continues even if the dependency is not currently present.
Greptile SummaryThis PR fixes a regression in the release pipeline where
Confidence Score: 4/5The fix is correct and directly addresses the documented CI failure — safe to merge. The change is minimal and well-scoped: it removes both local-path references and re-adds the crates.io version for both No files require special attention beyond Important Files Changed
Reviews (1): Last reviewed commit: "chore(release): sync aqua-registry depen..." | Re-trigger Greptile |
| local version="$1" | ||
|
|
||
| cargo rm aqua-registry | ||
| cargo rm --build aqua-registry |
There was a problem hiding this comment.
Fragile assumption about build-dependency presence
With set -euxo pipefail active, cargo rm --build aqua-registry will abort the entire release script if aqua-registry is ever removed from [build-dependencies] (e.g., after a future refactor). The function assumes both entries always co-exist with no guard or recovery path. Consider adding || true or a pre-flight check if you want the function to be resilient to that scenario.
Summary
xtasks/release-plzsoaqua-registryis rewritten in both[dependencies]and[build-dependencies]after the subcrate is published.Root Cause
The release-plz job for
chore: release 2026.5.6 (#9764)failed at https://github.com/jdx/mise/actions/runs/25666525627/job/75340319171 after publishingaqua-registry v2026.5.5.The failing step was:
PR #9535 introduced the new baked aqua registry pipeline. As part of that change, the root
misecrate now depends onaqua-registryat runtime and also inbuild.rs, soCargo.tomlhasaqua-registry = { path = "crates/aqua-registry" }in both[dependencies]and[build-dependencies].The release script already handled publishing the subcrate, but it only ran
cargo add aqua-registry@$AQUA_REGISTRY_VERSIONfor the normal dependency. That made the normal dependency point to crates.io while the build dependency still pointed at the local workspace path, and Cargo rejects that mixed source state before the release can continue.Test Plan
bash -n xtasks/release-plzmise run lint-fixcargo rm aqua-registry,cargo rm --build aqua-registry,cargo add aqua-registry@2026.5.5,cargo add --build aqua-registry@2026.5.5, then restored the manifest.This PR body was generated by an AI coding assistant.
Made with Cursor